home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
FM Towns: Free Software Collection 6
/
FM Towns Free Software Collection 6.iso
/
t_os
/
hk
/
bassrc
/
hk4srch.bas
< prev
Wrap
BASIC Source File
|
1993-07-08
|
48KB
|
1,296 lines
10 '------------------------------------------------------------------
20 ' HK4SRCH.BAS Copyrigit(C) T.Komura / 家計簿システム /
30 ' / Version 4 /
31 ' Version 4.0 1992.08.04-1992.08.06 / 検索プログラム /
32 ' / /
100 '------------------------------------------------------------------
165 DIM CFI$(15)
170 GOSUB *CONFIGファイルチェック
190 '
193 VERN$="1.0" 'バージョンNo.
200 *初期設定:'--------------------------------------------------------
210 CMD$="CD "+PRGDRV$:SHELL CMD$
220 SCREEN@ 0 :COLOR 7,0,0,4:CLS:CONSOLE 6,16,0:MOUSE 0
230 DIM MSGD%(28000):' 音声メッセージ配列定義 プログラム先頭で定義
235 DIM L_W$(80)
240 LOAD@ FMBDRV$+"\FMP.FMB"
250 PLAY "@30T150V4":DATX$=DATE$
260 DIM XB1(3,33),XB2(3,33),YB1(3,33),YB2(3,33),BST(3,33)
270 DIM ITEM$(20),ITEMC(20),DYN$(16),DRM$(16),DYN#(16),SRD(16)
280 DIM UXX$(16,6),VXX$(16,2),FKEYS(15)
300 INTERVAL 1 :'プログラム先頭
310 ON INTERVAL GOSUB *時計表示 :'プログラム先頭
320 GOSUB *ボタン座標読み取り
325 GOSUB *検索モード読み取り
330 'CLS:COLOR 7:PRINT int((int(((630-234+1)+7)/8)*(97-71+1)*4+8-1)/8)
350 DIM CUTN#(795),SRCS#(6292)
370 ON ERROR GOTO *ERROR
380 ON KEY(10) GOSUB *検索中止'
980 '
1000 *メインルーチン:'・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・
1005 GOSUB *表紙表示:CONSOLE 6,16,2
1010 MESN=18:GOSUB *SNDMSG
1015 MESN=1:GOSUB *MESDSP
1020 GOSUB *本日の日付
1030 SMODC=7:GOSUB *検索モード表示
1040 MOUSE 1,320,64,1
1100 *メイン選択
1110 IF MES2OFF=0 THEN MESN=2:GOSUB *MESDSP
1130 SWPASS=1:G=1:GOSUB *マウスボタン選択
1150 ON SWNO GOTO *S01,*S02,*S03,*S04,*S05,*S06,*S07,*S08
1160 GOTO 1100:STOP
1190 '
1200 *S01:'モード変更 --------------------------------------------------
1210 MODDEF=-1:GOTO *MODECHG
1220 *S02:'モード変更 --------------------------------------------------
1230 MODDEF=+1:GOTO *MODECHG
1250 *MODECHG
1260 G=1:B=SWNO:BST(G,B)=1:GOSUB *ボタンON_OFF表示
1265 IF SMODSEL=1 OR SRCF=1 THEN MES2OFF=1:GOTO 1320
1270 SMODE=SMODE+MODDEF
1280 IF SMODE>MODEN THEN SMODE=1:GOTO 1300
1290 IF SMODE<1 THEN SMODE=MODEN:GOTO 1300
1300 SMODC=7:GOSUB *検索モード表示
1310 MES2OFF=0
1320 G=1:B=SWNO:BST(G,B)=0:GOSUB *ボタンON_OFF表示
1330 GOTO *メイン選択
1340 '
1500 *S03:'モード選択 ---------------------------------------------------
1510 G=1:B=SWNO:BST(G,B)=1:GOSUB *ボタンON_OFF表示
1515 IF SRCF=1 THEN GOTO 1620
1520 SMODSEL=1:SMODC=4:GOSUB *検索モード表示
1560 CDTSET=0:GOSUB *検索条件設定
1570 IF SRCCAN=0 THEN 1600
1575 SMODSEL=0:SMODC=7:GOSUB *検索モード表示
1580 MES2OFF=0:GOTO 1625
1590 '
1600 GOSUB *検索条件表示:CDTSET=1
1610 MESN=13:GOSUB *MESDSP:MESN=16:GOSUB *SNDMSG
1620 MES2OFF=1
1625 G=1:B=3:BST(G,B)=0:GOSUB *ボタンON_OFF表示
1630 GOTO *メイン選択
1690 '
1700 *S05:'取消 ---------------------------------------------------------
1710 G=1:B=SWNO:BST(G,B)=1:GOSUB *ボタンON_OFF表示
1720 IF SMODSEL=1 THEN 1750
1730 MESN=14:GOSUB *MESDSP:MESN=12:GOSUB *SNDMSG
1740 FOR II=1 TO 5000:NEXT II:GOTO 1760
1750 GOSUB *検索条件消去:SMODSEL=0
1751 GOSUB *検索結果データ画面消去:SRCF=0
1755 SMODC=7:GOSUB *検索モード表示
1760 MES2OFF=0
1770 G=1:B=SWNO:BST(G,B)=0:GOSUB *ボタンON_OFF表示
1780 GOTO *メイン選択
1790 '
1920 '
2000 *S04:'実行 --------------------------------------------------------
2010 G=1:B=SWNO:BST(G,B)=1:GOSUB *ボタンON_OFF表示
2015 IF SRCF=1 THEN MES2OFF=1:GOTO 2470
2020 IF SMODSEL=1 THEN 2100
2030 MESN=14:GOSUB *MESDSP:MESN=12:GOSUB *SNDMSG
2040 FOR II=1 TO 5000:NEXT II:MES2OFF=0:GOTO 2470
2090 '
2100 GOSUB *検索実行
2110 GOSUB *初期表示ポイント検出
2120 IF BR<>0 THEN 2200
2130 MESN=18:GOSUB *MESDSP:MESN=19:GOSUB *SNDMSG
2132 GOSUB *検索条件消去:SMODSEL=0
2134 GOSUB *検索結果データ画面消去:SRCF=0
2140 FOR II=1 TO 5000:NEXT II:MES2OFF=0:GOTO 2470
2190 '
2200 GOSUB *検索結果データ表示MAIN
2210 SRCF=1
2230 MESN=19:GOSUB *MESDSP:MESN=14:GOSUB *SNDMSG
2240 GOSUB *検索結果ページ表示
2460 MES2OFF=1
2470 G=1:B=SWNO:BST(G,B)=0:GOSUB *ボタンON_OFF表示
2480 GOTO *メイン選択
2490 '
2500 *S06:'検索結果頁変更-----------------------------------------------
2510 PDEF=-1:GOTO 2630
2600 *S07:'検索結果頁変更-----------------------------------------------
2610 PDEF=+1:GOTO 2630
2630 G=1:B=SWNO:BST(G,B)=1:GOSUB *ボタンON_OFF表示
2700 IF SRCF=0 THEN 2760
2710 GOSUB *ページ変更
2720 GOSUB *検索結果データ表示MAIN
2760 MES2OFF=1
2770 G=1:B=SWNO:BST(G,B)=0:GOSUB *ボタンON_OFF表示
2780 GOTO *メイン選択
2790 '
8940 '
9000 *S08:'終了・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・
9020 G=1:B=8:BST(G,B)=1:GOSUB *ボタンON_OFF表示
9060 '
9110 MESN=9:GOSUB *MESDSP:MESN=24:GOSUB *SNDMSG
9120 INTERVAL OFF
9130 'MOUSE 5:GOSUB *FADEOUT
9150 CHAIN "hk4main.bas"
9160 '
9900 '-------------------------------------------------------------------
9910 ' GENERAL SUB ROUTINE
9920 '-------------------------------------------------------------------
10000 *CHR1IN:'////////// 1文字入力
10010 A$=INKEY$:IF A$="" THEN 10010
10020 A=INSTR(C$,A$)
10030 IF A=0 THEN MESN=13:GOSUB *SNDMSG:GOTO 10010
10040 RETURN
10050 '
10060 '
10070 *MESDSP:'////////// メッセージ表示
10080 RESTORE *MESDAT
10090 FOR IM=1 TO MESN:READ XM,YM,CM,CB,BM,MES$:NEXT IM
10100 LOCATE 0,YM:COLOR CB,CB:PRINT SPACE$(79);
10110 LOCATE XM,YM:COLOR CM,CB:PRINT MES$;
10120 'IF BM=1 THEN PLAY "L4O4A"
10130 RETURN
10140 '
10200 *MESDAT:'////////// メッセージデータ
10205 ' XM, YN, CM, CB, BM
10210 DATA 2, 23, 5, 0, 1 :'--- 01
10215 DATA " - HK version 4.0 - 検索 [HKSRCH.BAS L10]"
10220 DATA 2, 23, 7, 0, 0 :'--- 02
10225 DATA "検索モードを[▲][▼]ボタンで選んでください。"
10230 DATA 2, 23, 7, 0, 0 :'--- 03
10235 DATA "●印の検索条件を設定してください。"
10240 DATA 2, 23, 4, 0, 1 :'--- 04
10245 DATA "★検索条件ファイル読み込み中 !!"
10250 DATA 2, 23, 4, 0, 1 :'--- 05
10255 DATA "★検索条件ファイル保存中 !!"
10260 DATA 2, 23, 6, 0, 1 :'--- 06
10265 DATA "この検索モードでは、指定した検索条件は無効です。"
10270 DATA 2, 23, 6, 0, 0 :'--- 07
10275 DATA "検索開始年月が検索終了年月よりも大きくなっています。 訂正してください。"
10280 DATA 2, 23, 6, 0, 0 :'--- 08
10285 DATA "金額範囲の指定に誤りがあります。訂正してください。"
10290 DATA 2, 23, 5, 0, 1 :'--- 09
10295 DATA " ★★★ しばらくお待ちください。"
10300 DATA 2, 23, 6, 0, 0 :'--- 10
10305 DATA "この検索モードでは、指定した検索項目は無効です。検索項目を選択し直して下さい。"
10310 DATA 2, 23, 6, 0, 0 :'--- 11
10315 DATA "検索項目が指定されていません。 検索項目を選んでください。"
10320 DATA 2, 23, 7, 0, 0 :'--- 12
10325 DATA "検索条件ファイルを保存しますか? 保存する--[OK] 保存しない--[NG]"
10330 DATA 2, 23, 7, 0, 1 :'--- 13
10335 DATA "検索条件を確認して[実行]ボタンを押してください。"
10340 DATA 2, 23, 6, 0, 1 :'--- 14
10345 DATA "検索モードを選んでください。"
10350 DATA 2, 23, 6, 0, 1 :'--- 15
10355 DATA "検索開始年月の家計簿ファイルがありません。"
10360 DATA 2, 23, 6, 0, 1 :'--- 16
10365 DATA "検索終了年月の家計簿ファイルがありません。"
10370 DATA 2, 23, 4, 0, 1 :'--- 17
10375 DATA "★検索実行中!! (中止は[PF10])"
10380 DATA 2, 23, 6, 0, 1 :'--- 18
10385 DATA "検索の結果該当するデータが有りませんでした。"
10390 DATA 2, 23, 7, 0, 1 :'--- 19
10395 DATA "検索終了! [▲前頁][▼次頁]で頁切替え。 [取消]で検索終了。"
10990 '
11000 *SNDMSG:' SAVE "SNDMSG.SUB",A
11005 IF SNDMF=0 THEN RETURN
11010 '・・・・・・・・・・・・・・・・・ サウンドメッセージ実行サブルーチン 1989.02.04
11020 ' 入力=MESN (メッセージNo.)
11030 '
11070 IF MESN>36 THEN *RETURN_SNDMSG
11080 RESTORE *MSGNAM
11090 FOR IMSG=1 TO MESN
11100 READ MSGD$
11110 NEXT IMSG
11120 MSGFN$=SNDDRV$+"\"+MSGD$+"_F.SND"
11130 LOAD@ MSGFN$,MSGD%
11140 PCMPLAY MSGD%
11150 *RETURN_SNDMSG :WAIT SWAIT:RETURN
11160 *MSGNAM :'////////// .SND File Name Data
11170 DATA "OHA1" :' 1 おはよう
11180 DATA "KONN" :' 2 こんにちわ
11190 DATA "KONBAN" :' 3 こんばんわ
11200 DATA "GOKRO1" :' 4 ごくろうさん
11210 DATA "GOKRO2" :' 5 ごくろうさま
11220 DATA "OTUKA" :' 6 お疲れさま
11230 DATA "OMATA" :' 7 おまたせ
11240 DATA "ARIGA2" :' 8 ありがとう
11250 DATA "RUNRUN" :' 9 るんるん
11260 DATA "DAMEDE" :' 10 だめでしょう
11270 DATA "IIDE1" :' 11 いいですか
11280 DATA "NANISI" :' 12 なにしてるの
11290 DATA "DAMEDA" :' 13 だめだめ
11300 DATA "OWARI" :' 14 終わりました
11310 DATA "SIBA" :' 15 しばらくお待ち下さい
11320 DATA "YOROSI" :' 16 よろしいですか
11330 DATA "TYANTO" :' 17 ちゃんとしなさい
11340 DATA "ERANDE" :' 18 選んでください
11350 DATA "KAKNIN" :' 19 確認して下さい
11360 DATA "NYURYO" :' 20 入力してください
11370 DATA "IRA" :' 21 いらっしゃいませ
11380 DATA "OYASUM" :' 22 おやすみ
11390 DATA "ARIGA3" :' 23 ありがとうございました
11400 DATA "TYOTO" :' 24 ちょっと待って
11410 DATA "OOKINA" :' 25 大きな間違い
11420 DATA "YAMETE" :' 26 やめて
11430 DATA "TIGAU" :' 27 ちがうよ
11440 DATA "PINPON" :' 28 ぴんぽーん
11450 DATA "BUU" :' 29 ぶー
11460 DATA "MOUII" :' 30 もういいよう
11470 DATA "DEKITA" :' 31 できたよー
11480 DATA "IIDE2" :' 32 いいですか(2)
11490 DATA "YOSI" :' 33 よしなさい
11500 DATA "OYOSI" :' 34 およしなさい
11510 DATA "YAMENA" :' 35 やめなさい
11520 DATA "GOMEN" :' 36 ごめん
11530 '
12000 '////////// 年月日入力 & 曜日表示
12010 '
12045 *週検索
12050 DATA "日",2,"月",0,"火",0,"水",0,"木",0,"金",0,"土",5
12060 GOSUB *WEEKN:RESTORE 12050:FOR IW=0 TO WK:READ WKM$,CW:NEXT IW
12080 RETURN
12090 '
12100 *YMDIN ' V2.0 1991.07.21
12110 LX=XYMD:LY=YYMD:LC=CYMD:LL=4:LM$=INYR$
12120 LOCATE LX,LY:COLOR BYMD:PRINT " 年 月 日";
12130 LOCATE LX,LY:COLOR CYMD:PRINT LM$:GOSUB *LKEYIN: INYR$=LMG$
12140 LOCATE LX,LY:COLOR AYMD:PRINT LMG$
12145 YR=VAL(INYR$)
12150 LX=XYMD+7:LY=YYMD:LC=CYMD:LL=2:LM$=INMN$
12160 LOCATE LX,LY:COLOR CYMD:PRINT LM$:GOSUB *LKEYIN: INMN$=LMG$
12170 LOCATE LX,LY:COLOR AYMD:PRINT LMG$
12175 MN=VAL(INMN$):IF MN<1 OR MN>12 THEN BEEP:GOTO 12160
12180 LX=XYMD+11:LY=YYMD:LC=CYMD:LL=2:LM$=INDY$
12190 LOCATE LX,LY:COLOR CYMD:PRINT LM$:GOSUB *LKEYIN: INDY$=LMG$
12200 LOCATE LX,LY:COLOR AYMD:PRINT LMG$
12205 DY=VAL(INDY$):IF DY<1 OR DY>31 THEN BEEP:GOTO 12190
12210 RETURN
12220 '
12450 *WEEKN :'////////// 週NO.検索
12460 U=0 :'・・・・・・・・・・・・・・・・・・・・・・・・ Input; YR MN Output; WK DN
12470 IF YR/4-INT(YR/4)=0 THEN U=1
12480 DATA 31,28,31,30,31,30,31,31,30,31,30,31
12490 DATA 31,29,31,30,31,30,31,31,30,31,30,31
12500 IF U=0 THEN RESTORE 12480 ELSE RESTORE 12490
12505 IF MN=1 THEN MDN=0:MNDN=31:GOTO 12520
12510 MDN=0:FOR IWEKN=1 TO MN-1:READ DN:MDN=MDN+DN:NEXT IWEKN
12515 READ MNDN:'当月の日数
12520 YDN#=MDN+YR*365+INT((YR+3)/4)+5+DY-1
12530 WK=(YDN#/7-INT(YDN#/7))*7
12540 RETURN
13000 ' 1993.02.12 T.Komura
13010 *LKEYIN :'・・・・・・・・・・・ 1 行全角文字入力サブルーチン
13020 ' v1.1a 入力 = LX,LY : 表示開始座標 出力 = LMG$ : 入力後の文字列
13030 ' LM$ : 初期文字列
13040 ' LC : 表示文字色
13050 ' LL : 最大文字数
13060 '
13070 LCSRCL=2:LLINCL=6
13080 ' CR MR ML INS DEL BS CAN
13085 LMSX=MOUSE(0):LMSY=MOUSE(1):MOUSE 5 :'v1.1a
13090 CC$=CHR$(&H0D,&H1C,&H1D,&H12,&H7F,&H08,&H18)
13100 LMG$=SPACE$(LL):LMGD$=SPACE$(LL)
13110 LA$=INKEY$:IF LA$<>"" THEN 13110
13120 LCSR=0:LCSRX=LCSR:GOSUB *LCSRDX
13130 LOCATE LX,LY:COLOR LC:PRINT LM$ ' ・・・・・・・・・・ 初期文字列記憶
13140 LINE(LX*8,LY*19+16)-((LX+LL)*8,LY*19+17),XOR,LLINCL,BF
13150 LMX$=LEFT$(LM$+SPACE$(LL),LL)
13160 GOSUB *LMREAD
13170 *IN1C:' ・・・・・・・・・・ 1 文字入力
13180 LA$=INKEY$:IF LA$="" THEN 13180
13190 ALA=ASC(LA$):CLA=INSTR(CC$,LA$)
13200 IF CLA=0 THEN 13220
13210 ON CLA GOTO *CR,*MR,*ML,*INS,*DEL,*BS,*CAN
13220 IF KANF=1 THEN *KANJI
13230 IF ALA<&H20 THEN BEEP:GOTO *IN1C
13240 IF ALA>=&H20 AND ALA<&H80 THEN *ANK
13250 IF ALA>=&HA0 AND ALA<&HE0 THEN *ANK
13260 GOTO *KANJI
13270 *ANK :' ・・・・・・・・・・ ANK 文字入力
13280 LOCATE LX+LCSR,LY:COLOR LC:PRINT LA$
13290 MID$(LMX$,LCSR+1,1)=LA$
13300 GOSUB *LCSRINC:GOTO *IN1C
13310 *KANJI :' ・・・・・・・・・・ 漢字文字入力
13320 ON KANF+1 GOTO 13330,13360
13330 KANF=1:KANW$="":KANW$=LA$
13340 IF LCSR+1>=LL THEN KANF=0:BEEP
13350 GOSUB *LCSRD:GOTO *IN1C
13360 KANF=0:KANW$=KANW$+LA$
13370 LOCATE LX+LCSR,LY:COLOR LC:PRINT KANW$
13380 MID$(LMX$,LCSR+1,2)=KANW$
13390 GOSUB *LCSR2INC:GOTO *IN1C
13400 *CR :GOSUB *LMREAD :GOSUB *LCSRDX '////////// End
13410 LINE(LX*8,LY*19+16)-((LX+LL)*8,LY*19+17),XOR,LLINCL,BF
13415 MOUSE 0: MOUSE 1,LMSX,LMSY,1 :'v1.1a
13420 RETURN:'----------------------------------------------------------
13430 *MR :GOSUB *LCSRINC '////////// Right
13440 GOTO *IN1C
13450 *ML :GOSUB *LCSRDEC '////////// Left
13460 GOTO *IN1C
13470 *INS:GOSUB *LMREAD '////////// Insert
13480 IF LMGF$="2" THEN BEEP:GOTO *IN1C
13490 LMX$=LEFT$(LMG$,LCSR)+" "+MID$(LMG$,LCSR+1,LL-1-LCSR)
13500 GOSUB *LMXDSP
13510 GOTO *IN1C
13520 *DEL:GOSUB *LMREAD '////////// Delete
13530 IF LMGF$="2" THEN BEEP:GOTO *IN1C
13540 IF LMGF$="1" THEN 13560
13550 LMX$=LEFT$(LMG$,LCSR)+MID$(LMG$,LCSR+2,LL-1-LCSR)+" ":GOTO 13570
13560 LMX$=LEFT$(LMG$,LCSR)+MID$(LMG$,LCSR+3,LL-2-LCSR)+" "
13570 GOSUB *LMREAD
13580 GOSUB *LMXDSP:GOTO *IN1C
13590 *BS :GOSUB *LMREAD '////////// BackSpace
13600 IF LCSR=0 THEN BEEP:GOTO *IN1C
13610 IF LMGF$="2" THEN BEEP:GOTO *IN1C
13620 GOSUB *LCSRDEC:GOSUB *LMREAD:LMGFX$=LMGF$
13630 LMX$=LEFT$(LMG$,LCSR)+MID$(LMG$,LCSR+2,LL-1-LCSR)+" "
13640 IF LMGFX$="2" THEN LMGFX$="0":GOSUB *LMREAD:GOTO 13620
13650 GOSUB *LMXDSP
13660 GOTO *IN1C
13670 *CAN :LMX$=SPACE$(LL) '////////// Clear
13680 GOSUB *LMXDSP:LCSR=0:GOSUB *LCSRD
13690 GOSUB *LMREAD:GOTO *IN1C
13700 *LMREAD: '////////// Disp Char Read
13710 LMDX=0:LMGD$=""
13720 FOR II=1 TO LL
13730 LMG=ASC(MID$(LMX$,II,1))
13740 IF (LMG>=&H80) AND (LMG<&HA0) THEN LMDK=1 ELSE LMDK=0
13750 IF LMDX=1 THEN LMD$="2":LMDX=0:GOTO 13780
13760 IF LMDK=1 AND LMDX=0 THEN LMD$="1":LMDX=1:GOTO 13780
13770 IF LMDK=0 THEN LMD$="0":LMDX=0
13780 LMGD$=LMGD$+LMD$
13790 NEXT II:LMGF$=MID$(LMGD$,LCSR+1,1):LMG$=LMX$
13800 RETURN
13810 *LCSRD :LXC=8*(LX+LCSR) :LYC=LY*19:GOSUB 13840: '//// Csr Disp
13820 *LCSRDX:LXC=8*(LX+LCSRX):LYC=LY*19:GOSUB 13840: '//// Csr Erace
13830 LCSRX=LCSR:RETURN
13840 LINE(LXC,LYC+0)-(LXC+1,LYC+14),XOR,LCSRCL,BF:RETURN
13850 *LCSRINC :LCSR=LCSR+1:IF LCSR>=LL THEN LCSR=LL-1
13860 GOSUB *LCSRD:RETURN
13870 *LCSR2INC:LCSR=LCSR+2:IF LCSR>=LL THEN LCSR=LL-2
13880 GOSUB *LCSRD:RETURN
13890 *LCSRDEC :LCSR=LCSR-1:IF LCSR<0 THEN LCSR=0
13900 GOSUB *LCSRD:RETURN
13910 *LMXDSP:LOCATE LX,LY:COLOR LC:PRINT LMX$;:RETURN
15000 '
15010 ' SAVE"TCLOCK.sub" :' 組み込み型 アナログ時計 V1.1
15020 ' 1991.05 T.KOMURA
15030 '--------------------------------------------------------------------
15040 '
15220 *時計表示:'///////////////////////////////////
15230 XCLK0=572:YCLK0=22:CLKR=16:PI=3.1415!
15240 TIMEX$=TIME$:IF DATE$<>DATX$ THEN GOSUB *本日の日付
15250 TSC$=MID$(TIMEX$,7,2):SCR=2*PI*(VAL(TSC$)/60)
15260 TMN$=MID$(TIMEX$,4,2):MNR=2*PI*(VAL(TMN$)/60)
15270 THR$=LEFT$(TIMEX$,2) :HRR=2*PI*((VAL(THR$)*60+VAL(TMN$))/720)
15280 GOSUB *短針表示
15290 GOSUB *長針表示
15300 GOSUB *秒針表示
15310 CLOCKINIT=1:DATX$=DATE$
15320 RETURN
15330 '
15340 *短針表示
15350 XHD1=XCLK0+(CLKR-8)*SIN(HRR):XHD2=XCLK0
15360 YHD1=YCLK0-(CLKR-8)*COS(HRR):YHD2=YCLK0
15370 IF CLOCKINIT=0 THEN 15400
15380 IF SCR<>0 THEN 15420
15390 LINE(XHD1X,YHD1X)-(XHD2X,YHD2X),XOR,6
15400 LINE(XHD1 ,YHD1 )-(XHD2 ,YHD2 ),XOR,6
15410 XHD1X=XHD1:YHD1X=YHD1:XHD2X=XHD2:YHD2X=YHD2
15420 RETURN
15430 *長針表示
15440 XMD1=XCLK0+(CLKR-2)*SIN(MNR):XMD2=XCLK0
15450 YMD1=YCLK0-(CLKR-2)*COS(MNR):YMD2=YCLK0
15460 IF CLOCKINIT=0 THEN 15490
15470 IF SCR<>0 THEN 15510
15480 LINE(XMD1X,YMD1X)-(XMD2X,YMD2X),XOR,7
15490 LINE(XMD1 ,YMD1 )-(XMD2 ,YMD2 ),XOR,7
15500 XMD1X=XMD1:YMD1X=YMD1:XMD2X=XMD2:YMD2X=YMD2
15510 RETURN
15520 *秒針表示
15530 XSD1=XCLK0+(CLKR)*SIN(SCR):XSD2=XCLK0:'+(CLKR-10)*SIN(SCR)
15540 YSD1=YCLK0-(CLKR)*COS(SCR):YSD2=YCLK0:'-(CLKR-10)*COS(SCR)
15550 IF CLOCKINIT=0 THEN 15570
15560 LINE(XSD1X,YSD1X)-(XSD2X,YSD2X),XOR,4
15570 LINE(XSD1 ,YSD1 )-(XSD2 ,YSD2 ),XOR,4
15580 XSD1X=XSD1:YSD1X=YSD1:XSD2X=XSD2:YSD2X=YSD2
15590 RETURN
16000 '
19000 '
19010 '//////////////////////////////////////////////////////////////
19020 *ERROR:' エラー処理サブルーチン V1.10 1990.11.08 T.Komura
19030 '
19040 '
19050 IF ERR=53 THEN *IOERR
19060 IF ERR=63 THEN *FILNOF
19070 IF ERR=67 THEN *DSKFUL
19080 IF ERR=71 THEN *DSKUNF
19090 IF ERR=72 THEN *DSKOFF
19100 IF ERR=73 THEN *DSKWP
19110 ERMES$="エラー行:"+STR$(ERL)+" エラー番号:"+STR$(ERR)+" 発生"
19120 GOSUB *ERMSG
19130 STOP
19140 '////////// エラー処理
19150 *IOERR
19160 ERMES$="プリンターが準備されていません。 プリンターをセット後、"
19170 GOSUB *ERMSG:RESUME
19180 *DSKFUL
19190 ERMES$="ディスクが満杯です。 交換後、"
19200 GOSUB *ERMSG:RESUME
19210 *DSKUNF
19220 ERMES$="このディスクは使用出来ません。処理を中断します。 "
19230 GOSUB *ERMSG:RESUME
19240 *DSKOFF
19250 ERMES$="ディスク装置が準備されていません。ディスクをセット後、"
19260 GOSUB *ERMSG:RESUME
19270 *DSKWP
19280 ERMES$="ディスクが書き込み禁止になっています。解除後、"
19290 GOSUB *ERMSG:RESUME
19300 *FILNOF
19310 ERMES$="ファイルが見つかりません。ディスクを交換後、"
19320 GOSUB *ERMSG:RESUME
19330 '
19340 *ERMSG:'////////// エラーメッセージ
19350 LOCATE 2,23:COLOR 2,0
19355 PRINT SPACE$(77);
19359 LOCATE 2,23:COLOR 2,0
19360 PRINT ERMES$;"[実行]キーを押してね!";
19370 COLOR 7,0:MESN=19:GOSUB *SNDMSG
19380 ERRA$=INKEY$:IF ERRA$="" THEN 19380
19390 IF ERRA$<>CHR$(&H0D) THEN 19380
19400 LOCATE 3,23:COLOR 6,0
19410 PRINT "エラー処理を終わります。";SPACE$(52);
19420 RETURN
19430 '
19440 '
19450 '
20000 '------------------------------------------------------------------
20010 ' CUSTOM SUB ROUTINE FOR "HK4SRCH.BAS"
20020 '------------------------------------------------------------------
20100 *表紙表示
20140 LOAD@ TIFDRV$+"\HK4SRCH.TIF",(0,0)
20145 INTERVAL ON
20160 RETURN
20190 '
20200 *本日の日付
20210 TY$=LEFT$(DATE$,2) :TY=VAL(TY$)
20212 IF TY<90 THEN TY=TY+2000 ELSE TY=TY+1900
20214 TY$=RIGHT$(STR$(TY),4)
20220 TM$=MID$(DATE$,4,2):TM=VAL(TM$)
20230 TD$=RIGHT$(DATE$,2):TD=VAL(TD$)
20250 YR=TY:MN=TM:DY=TD:GOSUB *週検索:IF CW=0 THEN CW=7
20260 TYMD$=TY$+"年"+TM$+"月"+TD$+"日"+" 曜日"
20265 COLOR 7,0:LOCATE 46,1:PRINT TYMD$
20270 COLOR CW:LOCATE 61,1:PRINT WKM$
20280 RETURN
20290 '
20300 *検索年月表示
20310 SRYR$=RIGHT$(STR$(SRYR),4)
20315 NBN=4:NBA$=SRYR$:GOSUB *数字漢字変換:KYR$=NBK$
20320 SRMN$=RIGHT$(STR$(100+SRMN),2)
20325 NBN=2:NBA$=SRMN$:GOSUB *数字漢字変換:KMN$=NBK$
20350 DYMD$=KYR$+SPACE$(9)+KMN$
20360 COLOR 7,0:LOCATE 39,9+(SRCIN-1)*2:PRINT DYMD$;
20380 RETURN
20390 '
20400 *検索モード表示
20410 LOCATE 12,3:COLOR SMODC
20420 PRINT SMODE$(SMODE);
20430 RETURN
20440 '
20600 *年月変更
20601 'GOSUB *WEEKN
20602 'DY=DY+DDEF
20604 'IF DY<1 THEN MN=MN-1:GOSUB *WEEKN:DY=MNDN
20606 'IF DY>MNDN THEN MN=MN+1:DY=1
20610 MN=MN+MDEF
20620 IF MN<1 THEN MN=12+MN:YR=YR-1
20630 IF MN>12 THEN MN=MN-12:YR=YR+1
20640 YR=YR+YDEF
20650 IF YR<0 THEN YR=10000+YR
20660 IF YR>9999 THEN YR=YR-10000
20665 'GOSUB *WEEKN:IF DY>MNDN THEN DY=MNDN
20668 'DY$=RIGHT$(STR$(100+DY),2)
20670 MN$=RIGHT$(STR$(100+MN),2)
20680 YR$=RIGHT$(STR$(10000+YR),4)
20690 RETURN
20695 '
20700 *検索条件枠表示
20710 GET@A(208,125)-(557,410),SRCS#
20720 LOAD@ TIFDRV$+"\HK4SRCS.TIF",(208,125)
20722 FOR II=1 TO 15
20724 X=319+46*INT((II-1)/3):Y=327+17*((II-1) MOD 3)
20725 IF II>3 AND II<8 THEN C=1 ELSE C=0
20726 SYMBOL(X,Y),CFI$(II),.7!,.7!,C
20728 NEXT II
20730 FOR II=1 TO 5
20732 IF SMOPT(SMODE,II)=0 THEN 20738
20734 LOCATE 28,9+(II-1)*2:COLOR 3
20736 PRINT "●";
20738 NEXT II
20740 RETURN
20750 *検索条件枠消去
20760 FOR II=1 TO 9
20762 LOCATE 28,9+II-1:PRINT SPACE$(40);
20764 NEXT II
20770 PUT@A(208,125)-(557,410),SRCS#
20785 RETURN
20790 '
20800 *検索条件読み込み
20805 MESN=4:GOSUB *MESDSP
20810 GOSUB *SRCSGET
20820 SRYR=SR1YR:SRMN=SR1MN:SRCIN=1:GOSUB *検索年月表示
20825 YRS=SRYR:MNS=SRMN
20830 SRYR=SR2YR:SRMN=SR2MN:SRCIN=2:GOSUB *検索年月表示
20835 YRE=SRYR:MNE=SRMN
20840 LOCATE 39,13:COLOR 7:PRINT SX$(5)
20850 LOCATE 39,15:COLOR 7:PRINT SX$(6)
20860 LOCATE 55,15:COLOR 7:PRINT SX$(7)
20865 YNL#=VAL(SX$(6)):YNH#=VAL(SX$(7))
20870 SX8=0:SX8X=SX8:SX$(8)=SPACE$(2):SITM=0
20880 'G=2:B=SX8B:BST(G,B)=1:GOSUB *ボタンON_OFF表示
20890 RETURN
20895 '
20900 *検索条件保存
20905 MESN=5:GOSUB *MESDSP
20910 GOSUB *SRCSPUT
20920 RETURN
20930 '
21000 *検索条件設定
21010 GOSUB *検索条件枠表示
21020 GOSUB *検索条件読み込み
21030 MESN=3:GOSUB *MESDSP:MESN=20:GOSUB *SNDMSG
21040 G=2:GOSUB *マウスボタン選択
21050 IF SWNO>13 THEN *SRCS項目選択
21060 ON SWNO GOTO *SI01,*SI02,*SI03,*SI04,*SI05,*SI06,*SI07,*SI08,*SI09,*SI10,*SI11,*SI12,*SI13
21090 '//////////////////////////////////////////////////////////////
21100 *SI03:YDEF=+1:MDEF= 0:GOTO 21140
21110 *SI04:YDEF=-1:MDEF= 0:GOTO 21140
21120 *SI05:YDEF= 0:MDEF=+1:GOTO 21140
21130 *SI06:YDEF= 0:MDEF=-1:GOTO 21140
21140 G=2:B=SWNO:BST(G,B)=1:GOSUB *ボタンON_OFF表示
21150 SRCIN=1:IF SMOPT(SMODE,SRCIN)=0 THEN GOSUB *SELERR:GOTO 21185
21160 YR=SR1YR:MN=SR1MN:GOSUB *年月変更:SR1YR=YR:SR1MN=MN
21170 SX$(1)=YR$:SX$(2)=MN$:YRS=YR:MNS=MN
21180 SRYR=SR1YR:SRMN=SR1MN:GOSUB *検索年月表示
21185 G=2:B=SWNO:BST(G,B)=0:GOSUB *ボタンON_OFF表示
21190 GOTO 21040
21200 *SI07:YDEF=+1:MDEF= 0:GOTO 21240
21210 *SI08:YDEF=-1:MDEF= 0:GOTO 21240
21220 *SI09:YDEF= 0:MDEF=+1:GOTO 21240
21230 *SI10:YDEF= 0:MDEF=-1:GOTO 21240
21240 G=2:B=SWNO:BST(G,B)=1:GOSUB *ボタンON_OFF表示
21250 SRCIN=2:IF SMOPT(SMODE,SRCIN)=0 THEN GOSUB *SELERR:GOTO 21285
21260 YR=SR2YR:MN=SR2MN:GOSUB *年月変更:SR2YR=YR:SR2MN=MN
21270 SX$(3)=YR$:SX$(4)=MN$:YRE=YR:MNE=MN
21280 SRYR=SR2YR:SRMN=SR2MN:GOSUB *検索年月表示
21285 G=2:B=SWNO:BST(G,B)=0:GOSUB *ボタンON_OFF表示
21290 GOTO 21040
21300 *SI11:
21310 G=2:B=SWNO:BST(G,B)=1:GOSUB *ボタンON_OFF表示
21320 SRCIN=3:IF SMOPT(SMODE,SRCIN)=0 THEN GOSUB *SELERR:GOTO 21385
21330 LX=39:LY=13:LM$=SX$(5):LL=24:LC=4
21340 LOCATE LX,LY:COLOR LC:PRINT LM$:GOSUB *LKEYIN
21350 SX$(5)=LMG$
21360 LOCATE LX,LY:COLOR 7 :PRINT SX$(5)
21385 G=2:B=SWNO:BST(G,B)=0:GOSUB *ボタンON_OFF表示
21390 GOTO 21040
21400 *SI12:
21410 G=2:B=SWNO:BST(G,B)=1:GOSUB *ボタンON_OFF表示
21420 SRCIN=4:IF SMOPT(SMODE,SRCIN)=0 THEN GOSUB *SELERR:GOTO 21485
21430 LX=39:LY=15:LM$=SX$(6):LL=8:LC=4
21440 LOCATE LX,LY:COLOR LC:PRINT LM$:GOSUB *LKEYIN
21450 YNL#=VAL(LMG$):SX$(6)=RIGHT$(SPACE$(8)+STR$(YNL#),8)
21460 LOCATE LX,LY:COLOR 7 :PRINT SX$(6)
21485 G=2:B=SWNO:BST(G,B)=0:GOSUB *ボタンON_OFF表示
21490 GOTO 21040
21500 *SI13:
21510 G=2:B=SWNO:BST(G,B)=1:GOSUB *ボタンON_OFF表示
21520 SRCIN=4:IF SMOPT(SMODE,SRCIN)=0 THEN GOSUB *SELERR:GOTO 21585
21530 LX=55:LY=15:LM$=SX$(7):LL=8:LC=4
21540 LOCATE LX,LY:COLOR LC:PRINT LM$:GOSUB *LKEYIN
21550 YNH#=VAL(LMG$):SX$(7)=RIGHT$(SPACE$(8)+STR$(YNH#),8)
21560 LOCATE LX,LY:COLOR 7 :PRINT SX$(7)
21585 G=2:B=SWNO:BST(G,B)=0:GOSUB *ボタンON_OFF表示
21590 GOTO 21040
21600 *SRCS項目選択
21605 SRCIN=5:IF SMOPT(SMODE,SRCIN)=0 THEN GOSUB *SELERR:GOTO 21690
21610 SX8=SWNO:IF SX8X=0 THEN 21620
21615 G=2:B=SX8X:BST(G,B)=0:GOSUB *ボタンON_OFF表示
21620 G=2:B=SX8 :BST(G,B)=1:GOSUB *ボタンON_OFF表示
21630 SX8X=SX8
21640 SX$(8)=RIGHT$(STR$(SX8-13),2):SITM=VAL(SX$(8))
21690 GOTO 21040
21800 *SELERR
21810 MESN=6:GOSUB *MESDSP:MESN=13:GOSUB *SNDMSG
21820 FOR II=1 TO 5000:NEXT II
21825 MESN=3:GOSUB *MESDSP
21830 RETURN
21840 *SI01'
21845 G=2:B=SWNO:BST(G,B)=1:GOSUB *ボタンON_OFF表示
21850 YRS$=RIGHT$(STR$(10000+YRS),4)
21851 MNS$=RIGHT$(STR$(100+MNS),2):IYM$=YRS$+MNS$:GOSUB *HKISRC
21852 IF FIDX=0 THEN MESN=15:GOSUB *VALERR:GOTO 21950:'NG
21854 YRE$=RIGHT$(STR$(10000+YRE),4)
21855 MNE$=RIGHT$(STR$(100+MNE),2):IYM$=YRE$+MNE$:GOSUB *HKISRC
21856 IF FIDX=0 THEN MESN=16:GOSUB *VALERR:GOTO 21950:'NG
21860 IF SMOPT(SMODE,2)=0 THEN 21880 :'?
21870 IF (YRS*12+MNS)<=(YRE*12+MNE) THEN 21880 :'?
21875 MESN=7:GOSUB *VALERR:GOTO 21950 :'NG
21880 IF SMOPT(SMODE,4)=0 THEN 21900 :'?
21890 IF YNL#<=YNH# THEN 21900 :'?
21895 MESN=8:GOSUB *VALERR:GOTO 21950 :'NG
21900 IF SITM=0 THEN MESN=11:GOSUB *VALERR:GOTO 21950:'NG
21910 IF SMODE<>2 THEN 21920 :'?
21915 IF SITM=1 THEN MESN=10:GOSUB *VALERR:GOTO 21950:'NG
21920 IF SMODE<>3 THEN 21930 :'?
21925 IF SITM=1 THEN MESN=10:GOSUB *VALERR:GOTO 21950:'NG
21930 IF SMODE<>4 THEN *SIEND :'OK
21940 IF SITM>17 THEN MESN=10:GOSUB *VALERR:GOTO 21950:'NG
21945 GOTO *SIEND :'OK
21950 *SIRETRY
21960 G=2:B=SWNO:BST(G,B)=0:GOSUB *ボタンON_OFF表示
21970 GOTO 21040
22000 *SI02'
22005 G=2:B=SWNO:BST(G,B)=1:GOSUB *ボタンON_OFF表示
22010 SRCCAN=1:GOTO 22170
22015 MESN=12:GOSUB *MESDSP
22020 CMES$="検索条件をファイルに保存":GOSUB *確認
22030 IF SWNO=1 THEN 22160 ELSE 22170
22100 *VALERR
22110 GOSUB *MESDSP:MESN=25:GOSUB *SNDMSG
22130 FOR II=1 TO 8000:NEXT II
22135 MESN=3:GOSUB *MESDSP
22140 RETURN
22150 *SIEND
22155 SRCCAN=0
22160 GOSUB *検索条件保存
22170 GOSUB *検索条件枠消去
22180 RETURN
22190 '
22200 *検索条件表示
22205 LINE(14,88)-(549,107),PSET,7,BF
22206 IF SMODE=4 THEN 22215
22210 SRCYM$=SX$(1)+"."+SX$(2)+" テ "+SX$(3)+"."+SX$(4):GOTO 22220
22215 SRCYM$=SX$(1)+"."+SX$(2)+" テ "+SX$(1)+"."+SX$(2)
22220 LOCATE 47,3:COLOR 4:PRINT SRCYM$;
22230 IF SITM=1 THEN 22245
22240 SCOM1$=" 年 月 日 (曜) | 項 目 | 金 額 |":GOTO 22250
22245 SCOM1$=" 年 月 日 |"
22246 SYMBOL(118,90),"出 来 事",1,1,0,,,&H01
22250 SYMBOL(20,93),SCOM1$,.8!,.8!,0,,,&H01
22255 IF SITM=1 THEN 22270
22265 SYMBOL(269,90),ITEM$(SITM),1,1,ITEMC(SITM),,,&H01
22270 IF SMODE=2 OR SMODE=4 THEN 22280
22274 SYMBOL(337,89),"KeyWord:",.5!,.6!,4,,,,1
22275 SYMBOL(377,89),SX$(5),.8!,.6!,0,,,,1
22280 IF SITEM=1 OR SMODE=1 OR SMODE=4 THEN 22300
22284 SYMBOL(337,100)," Lower:",.5!,.5!,1,,,,1
22285 SYMBOL(377,100),SX$(6),.8!,.5!,1,,,,1
22290 SYMBOL(457,100),"Upper:",.5!,.5!,1,,,,1
22295 SYMBOL(488,100),SX$(7),.8!,.5!,1,,,,1
22300 RETURN
22310 '
22320 *検索条件消去
22330 LOCATE 47,3:PRINT SPACE$(30)
22340 LINE(14,88)-(549,107),PSET,7,BF
22350 RETURN
22360 '
23000 *キーワード検出
23010 KEYWN=0:FOR II=1 TO 5:KEYS$(II)="":NEXT II
23020 KEYW$=SX$(5)
23030 SPN=INSTR(KEYW$," ")
23035 IF SPN=0 THEN 23050
23040 IF SPN=1 THEN RETURN
23045 KEYW$=LEFT$(KEYW$,SPN-1)
23050 FOR II=1 TO 5
23060 SLN=INSTR(KEYW$,"/")
23070 IF SLN<>0 THEN 23085
23080 KEYS$(II)=KEYW$:KEYWN=II:II=6:GOTO 23120
23085 KEYL=LEN(KEYW$)
23090 IF SLN=1 THEN KEYW$=RIGHT$(KEYW$,KEYL-1):GOTO 23120
23100 KEYS$(II)=LEFT$(KEYW$,SLN-1)
23110 KEYW$=RIGHT$(KEYW$,KEYL-SLN)
23120 NEXT II
23125 'COLOR 1:FOR II=1 TO 5:PRINT "/";KEYS$(II);"/":NEXT:PRINT KEYWN:STOP
23130 RETURN
23140 '
23200 *検索データ検出
23210 FOR II=0 TO 15:SRD(II)=0:NEXT II
23220 IF SITM<>17 THEN 23240
23230 FOR II=1 TO 3:SRD(II)=1:NEXT II:GOTO 23310
23240 IF SITM<>18 THEN 23260
23250 FOR II=4 TO 7:SRD(II)=1:NEXT II:GOTO 23310
23260 IF SITM<>19 THEN 23280
23270 FOR II=4 TO 15:SRD(II)=1:NEXT II:GOTO 23310
23280 IF SITM<>20 THEN 23300
23290 FOR II=1 TO 15:SRD(II)=1:NEXT II:GOTO 23310
23300 SRD(SITM-1)=1
23310 'COLOR 1:FOR II=0 TO 15:PRINT II;"---";SRD(II):NEXT II:STOP
23315 RETURN
23320 '
23400 *検索年月日更新
23405 IF SMODE=4 THEN SRCCNT=0:RETURN
23410 YR=YRM:MN=MNM:YDEF=0:MDEF=+1
23420 GOSUB *年月変更
23430 IF (YR*12+MN)<=(YRE*12+MNE) THEN 23440
23435 SRCCNT=0:RETURN
23440 IYM$=YR$+MN$
23450 SRCCNT=1
23460 RETURN
23470 '
23500 *検索中止
23510 SRCABT=1
23520 RDY=32
23540 RETURN 25390
23550 '
25000 *検索実行
25010 IF SMODE=1 THEN KEYS=1:YENS=0:ALLS=0
25011 IF SMODE=2 THEN KEYS=0:YENS=1:ALLS=0
25012 IF SMODE=3 THEN KEYS=1:YENS=1:ALLS=0
25013 IF SMODE=4 THEN KEYS=0:YENS=0:ALLS=1
25020 IF KEYS=0 THEN 25030
25025 GOSUB *キーワード検出
25030 GOSUB *検索データ検出
25040 MESN=17:GOSUB *MESDSP:MESN=15:GOSUB *SNDMSG
25050 GOSUB *SRCROPN:FLN$=DRV$+PATH$+"\SRCW.DAT"
25060 CLOSE :KILL FLN$
25100 RSR=0:SRCABT=0
25110 IYM$=YRS$+MNS$
25120 GOSUB *HKISRC
25125 YRM$=RIGHT$(STR$(10000+YRM),4)
25126 MNM$=RIGHT$(STR$(100+MNM),2)
25130 IF FIDX=0 THEN 25400
25135 KEY(10) ON
25140 FOR RDY=1 TO 31
25145 GOSUB *検索アクセス表示
25150 GOSUB *HKDGET
25200 IF ALLS=1 THEN GOSUB *無条件検索:GOTO 25380
25210 IF KEYS=1 THEN GOSUB *キーデータ検索
25220 IF YENS=1 THEN GOSUB *金額データ検索
25380 NEXT RDY:KEY(10) OFF
25390 IF SRCABT=1 THEN 25430
25400 GOSUB *検索年月日更新
25410 IF SRCCNT=1 THEN 25120
25430 RETURN
25480 '
25500 *無条件検索
25510 UX$(1)=YRM$+"."+MNM$+"."+RIGHT$(STR$(100+RDY),2)
25520 IF SITM=1 THEN 25590
25530 YR=YRM:MN=MNM:DY=RDY:GOSUB *週検索
25540 UX$(2)="("+WKM$+")"
25550 UX$(3)=ITEM$(SITM)
25560 UX$(4)=RIGHT$(DYN$(SITM-1),8)
25570 UX$(5)=DRM$(SITM-1)
25580 GOTO 25610
25590 VX$(1)=UX$(1)
25600 VX$(2)=DEV$
25610 GOSUB *検索データ表示保存
25620 RETURN'
25630 '
25700 *キーデータ検索
25704 FOR II=0 TO 15:FKEYS(II)=0:NEXT II
25705 FOR SIT=0 TO 15:FDATA=0
25706 IF SRD(SIT)=0 THEN 25780
25710 IF KEYWN=0 THEN FDATA=1:GOTO 25775
25720 FOR II=1 TO KEYWN
25725 IF SITM=1 THEN 25740
25730 IF INSTR(DRM$(SIT),KEYS$(II))=0 THEN 25760 ELSE 25750
25740 IF INSTR(DEV$ ,KEYS$(II))=0 THEN 25760 ELSE 25750
25750 FDATA=1:FKEYS(SIT)=1:II=KEYWN+1
25760 NEXT II
25770 IF FDATA=0 THEN 25780
25775 IF YENS=1 THEN 25780
25776 SITMX=SITM:SITM=SIT+1:GOSUB *無条件検索:SITM=SITMX
25780 NEXT SIT
25790 RETURN
25795 '
25800 *金額データ検索
25805 FOR SIT=0 TO 15:FDATA=0
25806 IF SRD(SIT)=0 THEN 25880
25830 IF DYN#(SIT)<YNL# THEN 25880
25840 IF DYN#(SIT)>YNH# THEN 25880
25850 FDATA=1
25875 IF KEYS=0 THEN 25877
25876 IF FKEYS(SIT)=0 THEN 25880
25877 SITMX=SITM:SITM=SIT+1:GOSUB *無条件検索:SITM=SITMX
25880 NEXT SIT
25890 RETURN
25895 '
26000 *検索データ表示
26010 COLOR 0
26015 IF RSR=1 THEN LOCATE 0,6
26020 IF SITM=1 THEN 26100
26030 PRINT " ";UX$(1);
26040 IF UX$(2)="(日)" THEN CW=2:GOTO 26050
26042 IF UX$(2)="(土)" THEN CW=1:GOTO 26050
26044 CW=0:GOTO 26050
26050 COLOR CW:PRINT UX$(2);" ";
26060 COLOR 1:PRINT UX$(3);" ";
26070 COLOR 0:PRINT UX$(4);" ";
26080 COLOR 0:PRINT UX$(5)
26090 RETURN
26100 PRINT " ";VX$(1);" ";
26110 PRINT VX$(2)
26120 RETURN
26130 '
26200 *検索データ保存
26210 IF SITM=1 THEN 26230
26220 GOSUB *SRCRPUT1:RETURN
26230 GOSUB *SRCRPUT2:RETURN
26240 '
26300 *検索データ表示保存
26310 RSR=RSR+1
26320 SRCFND$=RIGHT$(STR$(10000+RSR),4)
26330 SXM=POS(0):SYM=CSRLIN
26340 LOCATE 63,23:COLOR 7
26350 PRINT "●該当件数:";SRCFND$;
26360 LOCATE SXM,SYM
26370 GOSUB *検索データ表示
26380 GOSUB *検索データ保存
26390 RETURN
26395 '
26400 *検索アクセス表示
26410 SRCYMD$=YRM$+"."+MNM$+"-"+RIGHT$(STR$(100+RDY),2)
26420 SXM=POS(0):SYM=CSRLIN
26430 LOCATE 38,23:COLOR 7
26440 PRINT "●検索年月日:";SRCYMD$;
26450 LOCATE SXM,SYM
26460 RETURN
26470 '
27000 *初期表示ポイント検出
27010 GOSUB *SRCROPN:CLOSE
27020 SR=INT((BR-1)/16)*16+1
27030 ER=BR
27040 RETURN
27050 '
27060 *検索結果データ表示MAIN
27070 GOSUB *検索結果データ初期化
27075 IF SITM=1 THEN 27085
27080 GOSUB *SRCRGET1:GOTO 27130
27085 GOSUB *SRCRGET2:GOTO 27130
27130 GOSUB *検索結果データ画面消去
27140 GOSUB *検索結果データ表示
27150 RETURN
27170 '
27200 *検索結果データ表示
27210 DSPLX=DSPL:FOR DSPL=1 TO 16
27220 GOSUB *検索結果データ表示SUB
27225 GOSUB *検索結果ページ表示
27230 NEXT DSPL:DSPL=DSPLX
27240 RETURN
27245 *検索結果データ表示SUB
27250 COLOR 0:LOCATE 2,5+DSPL
27260 IF SITM=1 THEN 27310
27265 PRINT UXX$(DSPL,1);
27270 IF UXX$(DSPL,2)="(日)" THEN CW=2:GOTO 27285
27275 IF UXX$(DSPL,2)="(土)" THEN CW=1:GOTO 27285
27280 CW=0:GOTO 27285
27285 COLOR CW:PRINT UXX$(DSPL,2);" ";
27290 COLOR 1:PRINT UXX$(DSPL,3);" ";
27295 COLOR 0:PRINT UXX$(DSPL,4);" ";
27300 COLOR 0:PRINT UXX$(DSPL,5);
27305 RETURN
27310 PRINT VXX$(DSPL,1);" ";
27315 PRINT VXX$(DSPL,2);
27320 RETURN
27325 '
27330 RETURN
27340 '
27400 *検索結果データ画面消去
27410 FOR II=6 TO 21
27420 LOCATE 0,II:COLOR 7
27430 PRINT SPACE$(78);
27440 NEXT II
27460 RETURN
27470 '
27480 *ページ変更
27490 PCAN=0:PCANX=0:SR=SR+PDEF*16
27500 IF SR<1 THEN SR=1 :PCANX=1:GOTO 27520
27510 IF SR>BR THEN SR=INT((BR-1)/16)*16+1:PCANX=1:GOTO 27520
27520 ER=SR+15
27530 IF ER>BR THEN ER=ER-1:GOTO 27530
27540 IF PCANX=1 AND (SWNO=2 OR SWNO=3) THEN PCAN=1
27550 RETURN
27560 '
27570 '
27580 *検索結果データ初期化'
27590 FOR II=0 TO 16
27600 UXX$(II,1)=SPACE$(10)
27610 UXX$(II,2)=SPACE$(4)
27620 UXX$(II,3)=SPACE$(6)
27630 UXX$(II,4)=SPACE$(8)
27640 UXX$(II,5)=SPACE$(32)
27650 VXX$(II,1)=SPACE$(10)
27660 VXX$(II,2)=SPACE$(64)
27720 NEXT II
27730 RETURN
27740 '
27800 *検索結果ページ表示
27810 TPAGE=INT((BR-1)/16)+1:TPAGE$=RIGHT$(STR$(1000+TPAGE),3)
27820 PAGE=INT((SR-1)/16)+1: PAGE$=RIGHT$(STR$(1000+ PAGE),3)
27830 LOCATE 64,23:COLOR 4
27840 PRINT "PAGE:";PAGE$;" / ";TPAGE$;
27850 RETURN
27860 '
29000 '------------------------------------------------------------------
30000 *検索モード読み取り
30010 RESTORE *検索モード項目:READ MODEN
30020 FOR SMODE=1 TO MODEN
30030 READ SMODE$(SMODE)
30035 FOR II=1 TO 5:READ SMOPT(SMODE,II):NEXT II
30040 NEXT SMODE
30050 SMODE=1
30060 RESTORE *項目データ
30065 FOR II=1 TO 20
30070 READ ITEM$(II),ITEMC(II)
30075 IF (II>1) AND (II<17) THEN ITEM$(II)=CFI$(II-1)
30080 NEXT II
30085 RETURN
30090 '
30130 *ボタン座標読み取り
30140 RESTORE *ボタン座標:READ SWGN
30150 FOR G=1 TO SWGN
30160 READ SWN(G),SMX(G),SMY(G),SMW(G)
30170 FOR B=1 TO SWN(G)
30180 READ XB1(G,B),XB2(G,B),YB1(G,B),YB2(G,B)
30190 NEXT B
30200 NEXT G
30210 RETURN
30220 '
30230 *ボタンON_OFF表示
30240 IF BST(G,B)=1 THEN BSC=7:BSB=0:BSA=2:GOTO 30260
30250 BSC=0:BSB=7:BSA=5
30260 CONNECT(XB1(G,B ),YB2(G,B) )-(XB2(G,B) ,YB2(G,B) )-(XB2(G,B ),YB1(G,B) ),BSC,PSET
30270 CONNECT(XB1(G,B)+1,YB2(G,B)-1)-(XB2(G,B)-1,YB2(G,B)-1)-(XB2(G,B)-1,YB1(G,B)+1),BSC,PSET
30280 CONNECT(XB1(G,B) ,YB2(G,B) )-(XB1(G,B) ,YB1(G,B) )-(XB2(G,B) ,YB1(G,B) ),BSB,PSET
30290 CONNECT(XB1(G,B)+1,YB2(G,B)-1)-(XB1(G,B)+1,YB1(G,B)+1)-(XB2(G,B)-1,YB1(G,B)+1),BSB,PSET
30300 LINE(XB1(G,B)+4,YB1(G,B)+4)-(XB1(G,B)+6,YB1(G,B)+5),PSET,BSA,BF
30305 IF BST(G,B)=1 THEN SMSGPLAY 0:WAIT 16
30310 RETURN
30320 '
30330 *マウスボタン選択
30340 SWERC=0
30350 IF MOUSE(2,0)=0 THEN 30350
30360 X_M=MOUSE(4,0):Y_M=MOUSE(5,0):SWNO=0
30370 FOR IMS=1 TO SWN(G)
30380 IF (X_M>XB1(G,IMS) AND X_M<XB2(G,IMS)) ELSE 30410
30390 IF (Y_M>YB1(G,IMS) AND Y_M<YB2(G,IMS)) ELSE 30410
30400 SWNO=IMS:IMS=SWN(G)+1
30410 NEXT IMS:FOR IM=1 TO 500:NEXT IM
30420 IF SWNO=0 AND SWPASS=1 THEN GOSUB *シート選択判定:GOTO 30460
30430 IF SWNO=0 AND SWERC>5 THEN MESN=12:GOSUB *SNDMSG :GOTO 30350
30440 IF SWNO=0 THEN SMSGPLAY 3:SWERC=SWERC+1:GOTO 30350
30460 SWPASS=0
30470 RETURN
30480 '
30500 *数字漢字変換
30505 NBK$=""
30510 FOR INBK=1 TO NBN
30512 NBAX$=MID$(NBA$,INBK,1)
30514 IF NBAX$=" " THEN NBK$=NBK$+" ":GOTO 30530
30520 NBK$=NBK$+KNJ$(&H2330+VAL(NBAX$))
30530 NEXT INBK
30540 RETURN
30580 '
30760 '
30820 *シート選択判定
30880 RETURN
30890 '
31000 *FADEOUT:CLS 1:CONSOLE 0,24,0
31010 FOR II=0 TO 15
31020 PALETTE II,[16*II,16*II,16*II]
31030 NEXT II
31040 FOR II=0 TO 255 STEP 5
31050 FOR JJ=0 TO 15:KK=16*JJ+II*(255-16*JJ)/255
31054 PALETTE JJ,[KK,KK,KK]
31056 NEXT JJ
31060 NEXT II
31070 RETURN
31080 '
31200 *確認
31205 LOCATE 27,3:PRINT SPACE$(52)
31210 GET@A(214,50)-(630,79),CUTN#
31220 LOAD@ TIFDRV$+"\CAUTION.TIF",(214,50)
31225 PLAY "o6l4ce"
31230 FOR II=1 TO 4:PLAY "O4G32"
31232 LOCATE 40,3:COLOR 6:PRINT CMES$;:'28chr
31234 WAIT SWAIT/10
31236 LOCATE 40,3:PRINT SPACE$(28)
31237 WAIT SWAIT/10
31238 NEXT II
31239 LOCATE 40,3:COLOR 7:PRINT CMES$;:MESN=19:GOSUB *SNDMSG:'28chr
31240 G=3:GOSUB *マウスボタン選択
31245 G=3:B=SWNO:BST(G,B)=1:GOSUB *ボタンON_OFF表示
31250 LOCATE 40,3:PRINT SPACE$(28)
31260 WAIT SWAIT/5
31270 PUT@A(214,50)-(630,79),CUTN#
31275 RETURN
31280 '
35000 *HKIOPN:'---------- インデックスファイルオープン
35005 DRV$=LEFT$(DATDRV$,2)
35010 IF LEN(DATDRV$)=3 THEN DRV$=LEFT$(DATDRV$,2):PATH$="":GOTO 35020
35015 PATH$=RIGHT$(DATDRV$,LEN(DATDRV$)-2)
35020 FLN$=DRV$+"(38)"+PATH$+"\HLIDX.DAT"
35030 OPEN "R",#2,FLN$
35040 FIELD #2,6 AS I$(1),32 AS I$(2)
35050 IR=LOF(2)
35060 RETURN
35070 '
35100 *HKDOPN:'---------- 家計簿データファイルオープン
35105 DRV$=LEFT$(DATDRV$,2)
35110 IF LEN(DATDRV$)=3 THEN DRV$=LEFT$(DATDRV$,2):PATH$="":GOTO 35120
35115 PATH$=RIGHT$(DATDRV$,LEN(DATDRV$)-2)
35120 FLN$=DRV$+"(768)"+PATH$+"\HL"+IYM$+".DAT"
35130 OPEN "R",#1,FLN$
35140 FIELD #1,64 AS D$(1),10*16 AS D$(2),32*4 AS D$(3),32*4 AS D$(4),32*4 AS D$(5),32*4 AS D$(6),32 AS D$(7)
35150 AR=LOF(1)
35160 RETURN
35170 '
35200 *SRCSOPN:'---------- 検索条件ファイルオープン
35205 DRV$=LEFT$(PRGDRV$,2)
35210 IF LEN(PRGDRV$)=3 THEN DRV$=LEFT$(PRGDRV$,2):PATH$="":GOTO 35220
35215 PATH$=RIGHT$(PRGDRV$,LEN(PRGDRV$)-2)
35220 FLN$=DRV$+"(54)"+PATH$+"\SRCS.DAT"
35230 OPEN "R",#1,FLN$
35240 FIELD #1,4 AS S$(1),2 AS S$(2),4 AS S$(3),2 AS S$(4),24 AS S$(5),8 AS S$(6),8 AS S$(7),2 AS S$(8)
35260 RETURN
35270 '
35300 *SRCROPN:'---------- 検索結果ファイルオープン
35305 DRV$=LEFT$(RAMDRV$,2)
35310 IF LEN(RAMDRV$)=3 THEN DRV$=LEFT$(RAMDRV$,2):PATH$="":GOTO 35320
35315 PATH$=RIGHT$(RAMDRV$,LEN(RAMDRV$)-2)
35320 FLN$=DRV$+"(74)"+PATH$+"\SRCW.DAT"
35330 OPEN "R",#3,FLN$
35340 FIELD #3,10 AS U$(1),4 AS U$(2),6 AS U$(3),8 AS U$(4),32 AS U$(5),14 AS U$(6)
35350 FIELD #3,10 AS V$(1),64 AS V$(2)
35360 BR=LOF(3)
35365 RETURN
35370 '
36000 *HKISRC:'---------- インデックスファイル検索
36005 FIDX=0
36010 GOSUB *HKIOPN
36020 FOR R=1 TO IR
36030 GET #2,R
36040 IF IYM$<>I$(1) THEN 36060
36050 IYM$=I$(1):IMAK$=I$(2):RI=R:R=IR+1:FIDX=1
36060 NEXT R:IF FIDX=0 THEN 36070
36062 GET #2,RI
36064 YRM=VAL(LEFT$(I$(1),4)):MNM=VAL(RIGHT$(I$(1),2))
36070 CLOSE #2
36080 RETURN
36090 '
36200 *HKDGET:'---------- 家計簿データ読み込み
36210 GOSUB *HKDOPN
36220 R=RDY
36230 GET #1,R
36240 DEV$=D$(1)
36250 FOR II=1 TO 16:DYN$(II )=MID$(D$(2),(II-1)*10+1,10):NEXT II
36252 FOR II=1 TO 4:DRM$(II+ 0)=MID$(D$(3),(II-1)*32+1,32):NEXT II
36253 FOR II=1 TO 4:DRM$(II+ 4)=MID$(D$(4),(II-1)*32+1,32):NEXT II
36254 FOR II=1 TO 4:DRM$(II+ 8)=MID$(D$(5),(II-1)*32+1,32):NEXT II
36255 FOR II=1 TO 4:DRM$(II+12)=MID$(D$(6),(II-1)*32+1,32):NEXT II
36256 DDM$=D$(7)
36260 GOSUB *HKDCAL
36280 CLOSE #1
36290 RETURN
36295 '
36400 *HKDCAL:'---------- 家計簿金額計算
36410 FOR II=1 TO 16:DYN#(II)=VAL(DYN$(II)):NEXT II
36490 RETURN
36495 '
36500 *SRCSGET:'---------- 検索条件ファイル読み込み
36510 GOSUB *SRCSOPN
36520 GET #1,1
36530 FOR II=1 TO 8:SX$(II)=S$(II):NEXT II
36540 CLOSE #1
36542 SR1YR=VAL(SX$(1)):SR1MN=VAL(SX$(2))
36544 SR2YR=VAL(SX$(3)):SR2MN=VAL(SX$(4))
36550 RETURN
36560 '
36600 *SRCSPUT:'---------- 検索条件ファイル書き込み
36610 GOSUB *SRCSOPN
36620 FOR II=1 TO 8:LSET S$(II)=SX$(II):NEXT II
36630 PUT #1,1
36640 CLOSE #1
36650 RETURN
36660 '
36700 *SRCRPUT1:'----------検索結果ファイル書き込み1
36710 GOSUB *SRCROPN
36720 FOR II=1 TO 6:LSET U$(II)=UX$(II):NEXT II
36730 PUT #3,RSR
36740 CLOSE #3:RETURN
36750 *SRCRPUT2:'----------検索結果ファイル書き込み2
36760 GOSUB *SRCROPN
36770 FOR II=1 TO 2:LSET V$(II)=VX$(II):NEXT II
36780 PUT #3,RSR
36790 CLOSE #3:RETURN
36795 '
36800 *SRCRGET1:'----------検索結果ファイル読み込み1
36810 GOSUB *SRCROPN:DSPL=1
36815 FOR R=SR TO ER
36820 GET #3,R
36830 FOR II=1 TO 6:UXX$(DSPL,II)=U$(II):NEXT II
36832 DSPL=DSPL+1
36835 NEXT R
36840 CLOSE #3:RETURN
36850 *SRCRGET2:'----------検索結果ファイル読み込み2
36860 GOSUB *SRCROPN:DSPL=1
36865 FOR R=SR TO ER
36870 GET #3,R
36880 FOR II=1 TO 2:VXX$(DSPL,II)=V$(II):NEXT II
36882 DSPL=DSPL+1
36885 NEXT R
36890 CLOSE #3:RETURN
36895 '
37190 '
39000 *CONFIGファイルチェック' V10 1993.02.07
39010 OPEN "R",#1,"(1)HK.CFG"
39020 FIELD #1,1 AS D$
39030 IF LOF(1)=0 THEN *CFGFE1
39035 CLOSE
39040 OPEN "I",#1,"HK.CFG"
39050 GOSUB *CFGREAD:PRGDRV$=CFG$:'-- PRGDRV$
39052 GOSUB *CFGREAD:DATDRV$=CFG$:'-- DATDRV$
39054 GOSUB *CFGREAD:RAMDRV$=CFG$:'-- RAMDRV$
39056 TIFDRV$=PRGDRV$+"\TIFF" :'-- TIFDRV$
39058 GOSUB *CFGREAD:FMBDRV$=CFG$:'-- FMBDRV$
39060 GOSUB *CFGREAD :'-- SNDMF
39062 IF LEFT$(CFG$,5)<>"SNDMF" THEN *CFGFE2
39064 SNDMF=VAL(RIGHT$(CFG$,1))
39066 GOSUB *CFGREAD:SNDDRV$=CFG$:'-- SNDDRV$
39068 GOSUB *CFGREAD :'-- SWAIT
39070 IF LEFT$(CFG$,4)<>"WAIT" THEN *CFGFE2
39072 SWAIT=VAL(RIGHT$(CFG$,LEN(CFG$)-5))
39080 FOR II=1 TO 15
39082 GOSUB *CFGREAD:CFI$(II)=CFG$
39084 NEXT II
39140 CLOSE
39150 RETURN
39200 *CFGFE1
39220 LOCATE 2,23:COLOR 6:PRINT "HK.CFG ファイルが見当たりません。 家計簿を終了します。"
39230 CLOSE:WAIT 100:SYSTEM
39300 *CFGFE2
39320 LOCATE 2,23:COLOR 6:PRINT "HK.CFG ファイルの内容に誤りがあります。 家計簿を終了します。"
39330 CLOSE:WAIT 100:SYSTEM
39400 *CFGFE3
39420 LOCATE 2,23:COLOR 6:PRINT "HK.CFG ファイルの項目に不足があります。 家計簿を終了します。"
39430 CLOSE:WAIT 100:SYSTEM
39500 *CFGREAD
39510 IF EOF(1)<>0 THEN *CFGFE3
39520 LINE INPUT #1,CFG$
39530 IF LEFT$(CFG$,1)="/" THEN 39510
39540 RETURN
39990 '
40000 *ボタン座標:'-------------------------------------------------------
40010 DATA 3 'SWGN スイッチグループ数
40090 '/////////////////////////////
40100 '-------------------- [G1] メインスイッチグループ
40110 ' SWN(G),SMX,SMY,SMW
40120 DATA 8 ,0.5,0.6, 1
40130 ' XB1 XB2 YB1 YB2
40140 DATA 216,239, 56, 73 '"▲"---------- 1
40150 DATA 240,263, 56, 73 '"▼"---------- 2
40160 DATA 264,309, 56, 73 '"SELECT"------ 3
40170 DATA 551,591, 42, 79 '"実行"-------- 4
40180 DATA 592,630, 42, 79 '"取消"-------- 5
40190 DATA 559,591, 90,106 '"▲前"-------- 6
40200 DATA 592,624, 90,106 '"▼次"-------- 7
40210 DATA 592,630, 3, 41 '"END"--------- 8
40220 '-------------------- [G2] 検索メニュースイッチグループ
40230 ' SWN(G),SMX,SMY,SMW
40240 DATA 33 ,0.5,0.6, 0
40250 ' XB1 XB2 YB1 YB2
40260 DATA 466,509,131,159 '"決定"-------- 1
40270 DATA 510,551,131,159 '"取消"-------- 2
40280 DATA 380,399,171,187 '"▲"---------- 3
40290 DATA 400,419,171,187 '"▼"---------- 4
40300 DATA 483,502,171,187 '"▲"---------- 5
40310 DATA 503,522,171,187 '"▼"---------- 6
40320 DATA 380,399,209,225 '"▲"---------- 7
40330 DATA 400,419,209,225 '"▼"---------- 8
40340 DATA 483,502,209,225 '"▲"---------- 9
40350 DATA 503,522,209,225 '"▼"----------10
40360 DATA 505,522,247,263 '"KEY WORD"----11
40370 DATA 377,394,285,301 '"金額上限"----12
40380 DATA 505,522,285,301 '"金額加減"----13
40390 '
40400 DATA 494,539,379,395 '"出来事"------14
40410 DATA 310,355,324,340 '"給 与"------15
40420 DATA 310,355,341,357 '"臨 時"------16
40430 DATA 310,355,358,374 '"他収入"------17
40440 DATA 356,401,324,340 '"食 費"------18
40450 DATA 356,401,341,357 '"生活費"------19
40460 DATA 356,401,358,374 '"洗濯代"------20
40470 DATA 402,447,324,340 '"光熱費"------21
40480 DATA 402,447,341,357 '"被服費"------22
40490 DATA 402,447,358,374 '"交際費"------23
40500 DATA 448,493,324,340 '"娯楽費"------24
40510 DATA 448,493,341,357 '"酒 代"------25
40520 DATA 448,493,358,374 '"車維持"------26
40530 DATA 494,539,324,340 '"教育費"------27
40540 DATA 494,539,341,357 '"雑 費"------28
40550 DATA 494,539,358,374 '"他支出"------29
40560 DATA 310,355,379,395 '"全収入"------30
40570 DATA 356,401,379,395 '"基支出"------31
40580 DATA 402,447,379,395 '"全支出"------32
40590 DATA 448,493,379,395 '"全収支"------33
40600 '-------------------- [G3] 確認スイッチグループ
40610 ' SWN(G),SMX,SMY,SMW
40620 DATA 2 ,0.8,0.8, 0
40630 ' XB1 XB2 YB1 YB2
40640 DATA 552,583, 56, 73 '"OK"---------- 1
40650 DATA 584,615, 56, 73 '"NG"---------- 2
40690 '
50000 *検索モード項目
50010 DATA 4
50015 ' " 検索モード ",開始,終了,Key ,金額,項目
50020 DATA "キーワード指定検索", 1, 1, 1, 0, 1
50030 DATA " 金額 指定検索", 1, 1, 0, 1, 1
50040 DATA "キーワード金額検索", 1, 1, 1, 1, 1
50050 DATA " 月間一覧表示 ", 1, 0, 0, 0, 1
51300 *項目データ
51400 DATA "出来事",0'----- 1
51410 DATA "給 与",4'----- 2
51420 DATA "臨 時",4'----- 3
51430 DATA "他収入",4'----- 4
51440 DATA "食 費",1'----- 5
51450 DATA "生活費",1'----- 6
51460 DATA "洗濯代",1'----- 7
51470 DATA "光熱費",1'----- 8
51480 DATA "被服費",1'----- 9
51490 DATA "交際費",1'-----10
51500 DATA "娯楽費",1'-----11
51510 DATA "酒 代",1'-----12
51520 DATA "車維持",1'-----13
51530 DATA "教育費",1'-----14
51540 DATA "雑 費",1'-----15
51550 DATA "他支出",2'-----16
51560 DATA "全収入",2'-----17
51570 DATA "基支出",2'-----18
51580 DATA "全支出",2'-----19
51590 DATA "全収支",2'-----20
60000 '
60010 ' 座標確認 DEBUG ROUTINE
60020 '
60030 MOUSE 0:MOUSE 1,0,0,1
60040 IF MOUSE(2,1)<>0 THEN STOP
60050 IF MOUSE(2,0)=0 THEN 60050
60060 X_M=MOUSE(4,0):Y_M=MOUSE(5,0):LX=INT(X_M/8):LY=INT(Y_M/19)
60070 LOCATE 2,24:COLOR 7:PRINT "X=";X_M,"Y=";Y_M,"LX=";LX,"LY=";LY;
60080 GOTO 60040
61000 '
61100 *検索条件TESTファイル作成
61110 DATDRV$="A:\"
61120 SX$(1)="1992"
61130 SX$(2)="01"
61140 SX$(3)="1992"
61150 SX$(4)="07"
61160 SX$(5)="012345678901234567890123"
61165 SX$(5)="0123456789小村利明890123"
61170 SX$(6)="00000000"
61180 SX$(7)="99999999"
61190 SX$(8)="01"
61200 GOSUB *SRCSPUT
61210 STOP
62000 LOCATE 2,6:COLOR 0'
62010 PRINT "1992.02.14(日) 給 与 00000000 ";STRING$(32,"A");
62100 LOCATE 2,7:COLOR 0
62110 PRINT "1992.02.14 ";STRING$(64,"A");
62120 STOP